package com.caseProject.puremvc.model.vo
{
	public class TransitionVO
	{
		private var _id:int;
		private var _elementFromId:int;
		private var _elementToId:int;
		private var _event:String = "";
		private var _guard:String = "";
		private var _action:String = "";
		private static var ID:int = 0;
		
		public function TransitionVO()
		{
			this.id = ID++;
		}
		
		public function get action():String
		{
			return _action;
		}

		public function set action(value:String):void
		{
			_action = value;
		}

		public function get guard():String
		{
			return _guard;
		}

		public function set guard(value:String):void
		{
			_guard = value;
		}

		public function get event():String
		{
			return _event;
		}

		public function set event(value:String):void
		{
			_event = value;
		}

		public function get elementToId():int
		{
			return _elementToId;
		}

		public function set elementToId(value:int):void
		{
			_elementToId = value;
		}

		public function get elementFromId():int
		{
			return _elementFromId;
		}

		public function set elementFromId(value:int):void
		{
			_elementFromId = value;
		}
		
		public function get id():int
		{
			return _id;
		}
		
		public function set id(value:int):void
		{
			_id = value;
		}
		
		public function toString ():String
		{
			var tag:String = '<transition id="' + this.id + 
				'" event="' + this.event +
				'" guard="' + this.guard +
				'" action="' + this.action +
				'" elementFromId="' + this.elementFromId +
				'" elementToId="' + this._elementToId + '"/>';
			return tag;
		}
	}
}